package com.ioftv.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ioftv.entity.LabelerBoxRecord;

import java.time.LocalDate;
import java.util.List;

/**
 * 标注员拉框记录Service接口
 */
public interface LabelerBoxRecordService extends IService<LabelerBoxRecord> {
    
    /**
     * 根据记录日期查询标注员拉框记录
     * @param recordDate 记录日期
     * @param limit 限制数量
     * @return 标注员拉框记录列表
     */
    List<LabelerBoxRecord> getByRecordDate(LocalDate recordDate, Integer limit);
    
    /**
     * 根据记录日期和用户ID查询标注员拉框记录
     * @param recordDate 记录日期
     * @param userId 用户ID
     * @param limit 限制数量
     * @return 标注员拉框记录列表
     */
    List<LabelerBoxRecord> getByRecordDateAndUserId(LocalDate recordDate, Long userId, Integer limit);
    
    /**
     * 批量更新达标状态
     * @param recordDate 记录日期
     * @param standardValue 达标值
     */
    void batchUpdateStandard(LocalDate recordDate, Integer standardValue);
    
    /**
     * 批量更新达标状态和用户ID
     * @param recordDate 记录日期
     * @param standardValue 达标值
     * @param userId 用户ID
     */
    void batchUpdateStandardAndUserId(LocalDate recordDate, Integer standardValue, Long userId);
}